package com.gopay.common.rcs.dao.antiphish;

import java.io.Serializable;
import java.util.List;

import com.gopay.common.base.dao.BaseDAO;
import com.gopay.common.constants.trans.GatewayChannel;
import com.gopay.common.domain.rcs.RcsAntiPhishConfCust;
import com.gopay.common.rcs.bean.AntiPhishType;
import com.gopay.common.rcs.vo.RcsAntiPhishConfCustlVo;

/**
 * 防钓鱼商户配置
 * 
 * @RcsAntiPhishingCustDAO.java
 * @author liujy
 * @2013-7-23 下午6:40:27 www.gopay.com.cn Inc.All rights reserved.
 */
public interface RcsAntiPhishingCustDAO extends BaseDAO<RcsAntiPhishConfCust, Serializable> {

    void updateCustConf(RcsAntiPhishConfCust custConf);

    List<?> getCustConfListBySql(String custName, String email, String custMob, int pageNo, int pageSize);

    int getCount(String custName, String email, String custMob);

    /**
     * 查询指定商户的信息
     * 
     * @param email
     * @return
     */
    List<?> getCustConfBySql(String custId);

    /**
     * 规则未初始化是 只查询商户信息
     * 
     * @param custName
     * @param email
     * @param pageNo
     * @param pageSize
     * @return
     */
    List<RcsAntiPhishConfCustlVo> getMerchantBySql(String custName, String email, String custMob, int pageNo, int pageSize);

    /**
     * 规则未初始化是 只查询商户信息(条数)
     * 
     * @param custName
     * @param email
     * @return
     */
    int getMerchantCount(String custName, String custEmail, String custMob);
    
    /**
     * 规则未初始化时 查询单商户信息
     * 
     * @param custId
     * @return
     */
    RcsAntiPhishConfCustlVo getMerchantByCustId(String custId);

    String getLegalValue(String custId, AntiPhishType type, GatewayChannel gch);

    RcsAntiPhishConfCust getByCustId(String custId);
   
    void delLogo(String merchantId);
}
